32 research outputs found

    Formalising the Continuous/Discrete Modeling Step

    Full text link
    Formally capturing the transition from a continuous model to a discrete model is investigated using model based refinement techniques. A very simple model for stopping (eg. of a train) is developed in both the continuous and discrete domains. The difference between the two is quantified using generic results from ODE theory, and these estimates can be compared with the exact solutions. Such results do not fit well into a conventional model based refinement framework; however they can be accommodated into a model based retrenchment. The retrenchment is described, and the way it can interface to refinement development on both the continuous and discrete sides is outlined. The approach is compared to what can be achieved using hybrid systems techniques.Comment: In Proceedings Refine 2011, arXiv:1106.348

    Translating Statecharts to B

    No full text
    Machine Notation of the B method. These algorithms have been implemented in iState, a tool for translating statecharts to various programming languages. The translation proceeds in several phases. We give a model of statecharts, a model of the code in AMN, as well as the intermediate representations in terms of class diagrams and their textual counterpart. The translation algorithms are expressed in terms of these models. We also discuss optimizations of the generated code. The translation scheme is motivated by making the generated code comprehensible.

    Foundations of the trace assertion method of module interface specification

    No full text

    Invariant-Based Synthesis of Fault-Tolerant Systems

    No full text

    The GOPCSD Tool: An Integrated Development Environment for Process Control Requirements and Design

    No full text

    An Action System Approach to the Steam Boiler Problem

    No full text
    This paper presents an approach to the specification of control programs based on action systems and refinement. The system to be specified and its physical environment are rst modelled as one initial action system. This allows us to abstract away from the communication mechanism between the two entities. It also allows us to clearly state and use the assumptions that we make about how the environment behaves. In subsequent steps the specifications of control program and the environment are further elaborated by refinement and are separated. We use the refinement calculus to structure and reason about the specification. The operators in this calculus allow ustoachieve a high degree of modularity in the development. An important aim of this paper is to produce an action system specification of the Steam Boiler problem

    Language and tool support for class and state machine refinement in UML-B

    No full text
    UML-B is a ā€™UML-likeā€™ graphical front end for Event-B that provides support for object-oriented modelling concepts. In particular, UML-B supports class diagrams and state machines, concepts that are not explicitly supported in plain Event-B. In Event-B, refinement is used to relate system models at different abstraction levels. The same abstraction-refinement concepts can also be applied in UML-B. This paper introduces the notions of refined classes and refined state machines to enable refinement of classes and state machines in UML-B. Together with these notions, a technique for moving an event between classes to facilitate abstraction is also introduced. Our work makes explicit the structures of class and state machine refinement in UML-B. The UML-B drawing tool and Event-B translator are extended to support the new refinement concepts. A case study of an auto teller machine (ATM) is presented to demonstrate application and effectiveness of refined classes and refined state machines

    On Object-Oriented Design and Verification

    No full text
    . We present a theory of object-orientation on the basis of the refinement calculus. This theory allows for specifying the behaviour of objects and provides a calculus for the proof of relationships between classes such as refinement. Given two similar, but not identical classes, we present an algorithm to construct a common superclass which is refined by both classes, and an algorithm to construct a common subclass which refines both classes. As an example, we present an account manager to illustrate design and verification. The overall approach aims at giving a simple theoretical basis for incremental object-oriented software construction. We demonstrate how formal specification and verification can be integrated into the development process, and thus can be put into practical use. 1 Introduction Object-orientation supplies structuring constructs for software systems which are new, compared to traditional programming. These structuring constructs support a development process that ..

    Contributions for Modelling UML State-Charts in B

    No full text
    Colloque avec actes et comitƩ de lecture. internationale.International audienceAn appropriate approach for translating UML to B formal specifications allows one to use UML and B jointly in an unified, practical and rigorous software development. We can formally analyse UML specifications via their derived B formal specifications. This point is significant because B support tools like AtelierB are available. We can also use UML specifications as a tool for building B specifications, so the development of B specifications become easier. In this paper, we address the problem of modelling UML state-charts in B, which has not been, so far, completely treated. We distinguish between event-related and activity-related parts of UML state-charts. We propose deriving the B specification of the event-related part independently with the activity-related part. For this purpose, a new approach for modelling events is proposed; the communication among state-charts is also considered
    corecore